home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-05-01 | 3.8 KB | 122 lines | [TEXT/MPS ] |
- /*
- File: MIDI.idl
-
- Contains: MIDI Manager Interfaces.
-
- Version: Technology: System 7.5
- Release: Universal Interfaces 3.0d3 on Copland DR1
-
- Copyright: © 1984-1996 by Apple Computer, Inc. All rights reserved.
-
- Bugs?: If you find a problem with this file, send the file and version
- information (from above) and the problem description to:
-
- Internet: apple.bugs@applelink.apple.com
- AppleLink: APPLE.BUGS
-
- */
- #ifndef __MIDI_IDL__
- #define __MIDI_IDL__
-
- #include <somobj.idl>
- #include <somcls.idl>
-
- #ifndef __ERRORS_IDL__
- #include <Errors.idl>
- #endif
- #ifndef __TYPES_IDL__
- #include <Types.idl>
- #endif
- #ifndef __MIXEDMODE_IDL__
- #include <MixedMode.idl>
- #endif
-
- #ifdef __SOMIDL__
-
- #if FOR_SYSTEM7_ONLY
- /*
- * * * N O T E * * *
-
- This file has been updated to include MIDI 2.0 interfaces.
-
- The MIDI 2.0 interfaces were developed for the classic 68K runtime.
- Since then, Apple has created the PowerPC and CFM 68K runtimes.
- Currently, the extra functions in MIDI 2.0 are not in InterfaceLib
- and thus not callable from PowerPC and CFM 68K runtimes (you'll
- get a linker error).
- */
- /*
- MIDI data and messages are passed in MIDIPacket records (see below).
- The first byte of every MIDIPacket contains a set of flags
-
- bits 0-1 00 = new MIDIPacket, not continued
- 01 = begining of continued MIDIPacket
- 10 = end of continued MIDIPacket
- 11 = continuation
- bits 2-3 reserved
-
- bits 4-6 000 = packet contains MIDI data
-
- 001 = packet contains MIDI Manager message
-
- bit 7 0 = MIDIPacket has valid stamp
- 1 = stamp with current clock
- */
- typedef SOMLargeStruct MIDIPacket; /* Derived from a struct of 255 bytes in size */
-
- typedef OpaquePtr MIDIPacketPtr; /* Substituted OpaquePtr for “MIDIPacket*” */
-
- typedef OpaquePtr MIDIReadHookProcPtr;
- typedef OpaquePtr MIDIReadHookUPP;
- typedef OpaquePtr MIDITimeProcPtr;
- typedef OpaquePtr MIDITimeUPP;
- typedef OpaquePtr MIDIConnectionProcPtr;
- typedef OpaquePtr MIDIConnectionUPP;
- typedef OpaquePtr MDVRCommProcPtr;
- typedef OpaquePtr MDVRCommUPP;
- typedef OpaquePtr MDVRTimeCodeProcPtr;
- typedef OpaquePtr MDVRTimeCodeUPP;
- typedef OpaquePtr MDVRReadProcPtr;
- typedef OpaquePtr MDVRReadUPP;
- typedef SOMLargeStruct MIDIClkInfo; /* Derived from a struct of 8 bytes in size */
-
- typedef SOMLargeStruct MIDIIDRec; /* Derived from a struct of 8 bytes in size */
-
- typedef SOMLargeStruct MIDIPortInfo; /* Derived from a struct of 20 bytes in size */
-
- typedef OpaquePtr MIDIPortInfoPtr; /* Substituted OpaquePtr for “MIDIPortInfo*” */
-
- typedef OpaquePtr MIDIPortInfoHdl; /* Substituted OpaquePtr for “MIDIPortInfoPtr*” */
-
- typedef OpaquePtr MIDIPortInfoHandle; /* Substituted OpaquePtr for “MIDIPortInfoPtr*” */
-
- typedef SOMLargeStruct MIDIPortParams; /* Derived from a struct of 284 bytes in size */
-
- typedef OpaquePtr MIDIPortParamsPtr; /* Substituted OpaquePtr for “MIDIPortParams*” */
-
- typedef SOMLargeStruct MIDIIDList; /* Derived from a struct of 6 bytes in size */
-
- typedef OpaquePtr MIDIIDListPtr; /* Substituted OpaquePtr for “MIDIIDList*” */
-
- typedef OpaquePtr MIDIIDListHdl; /* Substituted OpaquePtr for “MIDIIDListPtr*” */
-
- typedef OpaquePtr MIDIIDListHandle; /* Substituted OpaquePtr for “MIDIIDListPtr*” */
-
- /* MDVR Control structs*/
- typedef SOMLargeStruct MDVRInCtlRec; /* Derived from a struct of 16 bytes in size */
-
- typedef OpaquePtr MDVRInCtlPtr; /* Substituted OpaquePtr for “MDVRInCtlRec*” */
-
- typedef SOMLargeStruct MDVROutCtlRec; /* Derived from a struct of 26 bytes in size */
-
- typedef OpaquePtr MDVROutCtlPtr; /* Substituted OpaquePtr for “MDVROutCtlRec*” */
-
- typedef OpaquePtr MDVRPtr; /* Substituted OpaquePtr for “void*” */
-
- #endif
-
- #endif /* __SOMIDL__ */
-
- #endif /* __MIDI_IDL__ */
-
-